package com.joshondesign.sdljava.demo;

import com.joshondesign.sdljava.SDLUtil;
import com.joshondesign.sdljava.SDL_Surface;
import com.joshondesign.sdljava.gfx.*;

public class ControlTest implements SDLUtil.InitCallback {
    public static void main(String ... args) {
        SDLUtil.init(new ControlTest());
    }

    public void callback() throws Exception {
        Util.standard_init();
        SDL_Surface surface = Util.createResizableWindow(800, 600);
        final Scene scene = new Scene(surface);
        scene.setBackgroundFill(SColor.WHITE);


        Layer layer = new Layer(surface.getFormat());
        scene.add(layer);

        layer.add(new SliderNode(scene).setX(30).setY(10));

        layer.add(new ButtonNode(scene)
                .setText("Destroy!")
                .setFillColor(SColor.GREEN)
                .setX(30)
                .setY(120)
        );
        layer.add(new EnyoButtonNode(scene)
                .setText("Destroy!")
                .setFillColor(new SColor(100,100,100))
                .setWidth(160)
                .setHeight(36)
                .setX(350)
                .setY(10)
        );


        layer.add(new LabelNode().setText("Left aligned").setX(200).setY(260));
        layer.add(new LabelNode().setText("Right aligned").setHAlign(LabelNode.HAlign.Right).setX(200).setY(300));
        /*

        List<String> data = new ArrayList<String>();
        for(int i=0; i<8; i++) {
            data.add("foo");
            data.add("bar");
            data.add("baz");
            data.add("quxx");
        }
        layer.add(new ListNode(scene).setModel(data).setWidth(300).setHeight(400).setX(400).setY(100));
        */
        scene.setTargetFPS(5);
        scene.start();
    }

}
